package com.hejielife.concrete;

/**
 * <hr>
 * 装饰模式:<br>
 * 动态地给一个对象添加一些额外的职责。就增加功能来说，Decorator模式相比生成子类更为灵活。
 * <hr>
 * 适用性 :<br>
 * 1.在不影响其他对象的情况下，以动态、透明的方式给单个对象添加职责。 <br>
 * 2.处理那些可以撤消的职责。 <br>
 * 3.当不能采用生成子类的方法进行扩充时。
 * 
 */
public class Client {

	public static void main(String[] args) {
		House house = new HouseImpl();
		house.run();
		System.out.println("###新增贴上墙纸..###");
		HouseDecorate houseDecorate = new HouseDecorateImpl(house);
		houseDecorate.run();
	}

}
